Anexo N° 53

Especificaciones Técnicas

Información de convenios de cooperación con organismos internacionales

Formato 1159 – Versión 8

Objetivo

 

Definir las características y contenido de los archivos, donde se reporta la Información de Convenios de Cooperación con Organismos Internacionales.

 

Especificación técnica

 

El formato de Información de Convenios de Cooperación con Organismos Internacio­nales, debe enviarse en un archivo XML que cumpla las siguientes especificaciones:

 

1. Estándar del Nombre de los Archivos

 

El nombre de cada uno de los archivos, debe especificarse mediante la siguiente se­cuencia de caracteres:

Dmuisca_ccmmmmmvvaaaacccccccc.xml

cc: Concepto (Inserción = 01, Reemplazo = 02)

mmmmm            : Formato (Información de Convenios de Cooperación con Organismos Internacionales = 01159)

vv          : Versión del formato (Versión = 08).

aaaa       : Año de envío.

Cccccccc           : Consecutivo de envío por año.

 

2. Formato del Archivo

 

El formato de Información de Convenios de Cooperación con Organismos Internacio­nales, contiene un documento XML, que está compuesto por dos elementos complejos: Encabezado y Contenido, las cuales se deben enviar en el orden enunciado.

 

Encabezado

Contenido Información 1

Contenido Información 2

...

Contenido Información N

 

1. El documento XML debe cumplir con la especificación 1.0 Tercera edición.

2. El conjunto de caracteres utilizado en el documento XML debe ser el alfabeto latino No. 1: “ISO-8859-1”.

3. El archivo debe contener un documento XML bien formado y válido de acuerdo al esquema XSD que incluye en esta especificación técnica.

4. El archivo debe contener un elemento único elemento raíz llamado “mas”, que a su vez contendrá toda la información del archivo, tanto el encabezado como los registros.

 

2.1 Formato del encabezado

 

El encabezado del archivo viene en el elemento “Cab” y contiene los siguientes datos, todos de carácter obligatorio:

 

 

(*) Se enviarán archivos con máximo 5.000 registros; si es necesario informar más de 5.000 registros, se fraccionará la información en archivos de 5.000 registros o menos. La cantidad de registros está medida por el número de elementos “convenios” que contenga el archivo.

 

2.3 Formato del Contenido

 

En el contenido del archivo se deben incluir tantos registros como se informó en la cabecera en el campo “Cantidad de registros”.

Cada registro reportado debe mantener la misma estructura previamente explicada y usada para la cabecera.

 

El contenido del archivo viene en el elemento “convenios” y se deben incluir los si­guientes datos para cada transacción reportada.

 

 

El campo Número del convenio, es la llave única para este formato, la cual no debe repetirse para los registros de un mismo envío.

 

Al elemento “convenios” se pueden agregar elementos secundarios identificados como “contratos”, los cuales contienen la Identificación de los Contratos celebrados.

 

Los campos Número de contrato y Clase de contrato, forman la llave única para este formato, la cual no debe repetirse para los registros de un mismo envío.

Al elemento “convenios” se pueden agregar elementos secundarios identificados como “pagos”, los cuales contienen la Identificación de los terceros beneficiarios de los pagos con cargo a los Contratos celebrados.

 

 

Los campos Concepto de pago, Tipo de Documento y Número de Identificación con­forman una llave única para este formato, la cual no debe repetirse para los registros de un mismo envío.

 

3. Validaciones

 

3.1 Validaciones Generales

1. El archivo debe contener todos los campos definidos para el encabezado y estos campos deben estar correctamente diligenciados.

2. La información del contenido del archivo debe corresponder al esquema XSD en­tregado.

3. Los atributos que registran valores numéricos, se reportan con valores numéricos positivos, sin signos ni puntuaciones, según lo reportado por el informante o en su defecto con cero (0).

4. Los campos que corresponden a fechas, deben contener fechas válidas en cuanto a año, mes, y día.

 

3.2 Validaciones del Encabezado

1. Los campos concepto, formato y versión, deben venir diligenciados con los valores estipulados en las especificaciones técnicas.

2. Año de envío, debe ser el año calendario.

3. Número de envío, debe ser un número consecutivo por año para todos los formatos que el remitente envíe a la DIAN.

4. Fecha de envío, debe ser la fecha calendario, en formato AAAA-MM-DDTHH:MM:SS.

5. Cantidad de registros, debe ser igual a la cantidad de registros reportados en el contenido, que como máximo puede ser 5.000 registros.

6. Valor total, corresponde a la sumatoria de la casilla “país” (País de origen del Orga­nismo Internacional) de los registros reportados.

 

4. Esquema XSD

A continuación se incluye el esquema XSD para esta especificación técnica.

<?xml version="1.0" encoding="ISO-8859-1"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">

<xs:element name="pagos">

<xs:annotation>

<xs:documentation>Elemento que contiene contienen la Identificación de los terceros beneficiarios de los pagos con cargo a los Contratos celebrados.</xs:documentation>

</xs:annotation>

<xs:complexType>

<xs:attribute name="cpt" use="required">

<xs:annotation>

<xs:documentation>Concepto de pago</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:int">

<xs:minInclusive value="0"/>

<xs:maxInclusive value="9999"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="tdoc" use="required">

<xs:annotation>

<xs:documentation>Tipo de Documento</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:int">

<xs:minInclusive value="0"/>

<xs:maxInclusive value="99"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="nid" use="required">

<xs:annotation>

<xs:documentation>Número de identificación</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="20"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="dv" use="optional">

<xs:annotation>

<xs:documentation>Digito de verificación</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:int">

<xs:minInclusive value="0"/>

<xs:maxInclusive value="9"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="apl1" use="optional">

<xs:annotation>

<xs:documentation>Primer Apellido del contratista</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="60"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="apl2" use="optional">

<xs:annotation>

<xs:documentation>Segundo Apellido del   contratista</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="60"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="nom1" use="optional">

<xs:annotation>

<xs:documentation>Primer Nombre del  contratista</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="60"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="nom2" use="optional">

<xs:annotation>

<xs:documentation>Otros nombres del  contratista</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="60"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="raz" use="optional">

<xs:annotation>

<xs:documentation>Razón Social  contratista</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="450"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="dir" use="required">

<xs:annotation>

<xs:documentation>Dirección del  contratista</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="200"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="dpto" use="required">

<xs:annotation>

<xs:documentation>Código del departamento</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:int">

<xs:minInclusive value="0"/>

<xs:maxInclusive value="99"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="mun" use="required">

<xs:annotation>

<xs:documentation>Código del municipio</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:int">

<xs:minInclusive value="0"/>

<xs:maxInclusive value="999"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="val" use="required">

<xs:annotation>

<xs:documentation>Valor pago o abono en cuenta</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:double">

<xs:pattern value="[0-9]{1,20}"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="vrenta" use="optional">

<xs:annotation>

<xs:documentation> Valor base Retención a titulo de renta</xs:documentation> </xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:double">

<xs:pattern value="[0-9]{1,20}"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="rrenta" use="optional">

<xs:annotation>

<xs:documentation>Valor Retenciones practicadas a titulo de renta</xs:docu­mentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:double">

<xs:pattern value="[0-9]{1,20}"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="riva" use="optional">

<xs:annotation>

<xs:documentation>Valor Retenciones practicadas a titulo de IVA</xs:docu­mentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:double">

<xs:pattern value="[0-9]{1,20}"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="vimpo" use="optional">

<xs:annotation>

<xs:documentation>Valor impuesto descontable</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:double">

<xs:pattern value="[0-9]{1,20}"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

</xs:complexType>

</xs:element>

<xs:element name="convenios">

<xs:annotation>

<xs:documentation>Elemento que encapsula la información de Información del formato 1159:  Convenios</xs:documentation>

</xs:annotation>

<xs:complexType>

<xs:sequence>

<xs:element ref="contratos" minOccurs="0" maxOccurs="unbounded"/>

</xs:sequence>

<xs:attribute name="nconv" use="required">

<xs:annotation>

<xs:documentation>Número del Convenio</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="20"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="idconv" use="optional">

<xs:annotation>

<xs:documentation>Identificación Convenio en ejecución</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="450"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="raz" use="required">

<xs:annotation>

<xs:documentation>Nombre o Razón Social del Organismo Internacional con el cual se celebró el convenio</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="450"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="pais" use="required">

<xs:annotation>

<xs:documentation>País del Organismo Internacional</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:int">

<xs:minInclusive value="0"/>

<xs:maxInclusive value="9999"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

</xs:complexType>

<xs:unique name="ContratoUnico">

<xs:selector xpath="contratos"/>

<xs:field xpath="@ncont"/>

<xs:field xpath="@ccon"/>

</xs:unique>

</xs:element>

<xs:element name="mas">

<xs:annotation>

<xs:documentation>Elemento raiz del xml de carga masiva</xs:documentation>

</xs:annotation>

<xs:complexType>

<xs:sequence>

<xs:element name="Cab" type="CabType"/>

<xs:element ref="convenios" maxOccurs="unbounded"/>

</xs:sequence>

</xs:complexType>

<xs:unique name="ConvenioUnico">

<xs:selector xpath="convenios"/>

<xs:field xpath="@nconv"/>

</xs:unique>

</xs:element>

<xs:complexType name="CabType">

<xs:sequence>

<xs:element name="Ano" type="xs:gYear" nillable="false">

<xs:annotation>

<xs:documentation>Año de envio</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="CodCpt" nillable="false">

<xs:annotation>

<xs:documentation>Concepto</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:int">

<xs:minInclusive value="0"/>

<xs:maxInclusive value="99"/>

</xs:restriction>

</xs:simpleType>

</xs:element>

<xs:element name="Formato" fixed="1159">

<xs:simpleType>

<xs:restriction base="xs:positiveInteger">

<xs:totalDigits value="4"/>

</xs:restriction>

</xs:simpleType>

</xs:element>

<xs:element name="Version" type="xs:positiveInteger" fixed="8"/>

<xs:element name="NumEnvio">

<xs:annotation>

<xs:documentation>Numero de envio</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:positiveInteger">

<xs:totalDigits value="8"/>

<xs:maxInclusive value="99999999"/>

</xs:restriction>

</xs:simpleType>

</xs:element>

<xs:element name="FecEnvio" type="xs:dateTime">

<xs:annotation>

<xs:documentation>Fecha de envio</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="FecInicial" type="xs:date">

<xs:annotation>

<xs:documentation>Fecha inicial</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="FecFinal" type="xs:date">

<xs:annotation>

<xs:documentation>Fecha Final</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="ValorTotal" type="xs:double">

<xs:annotation>

<xs:documentation>Valor Total</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="CantReg">

<xs:annotation>

<xs:documentation>Cantidad de registros</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:positiveInteger">

<xs:totalDigits value="4"/>

<xs:maxInclusive value="9999"/>

</xs:restriction>

</xs:simpleType>

</xs:element>

</xs:sequence>

</xs:complexType>

<xs:element name="contratos">

<xs:annotation>

<xs:documentation>Elemento que contienen la Identificación de los Contratos celebrados.</xs:documentation>

</xs:annotation>

<xs:complexType>

<xs:sequence>

<xs:element ref="pagos" minOccurs="0" maxOccurs="unbounded"/>

</xs:sequence>

<xs:attribute name="ncont" use="required">

<xs:annotation>

<xs:documentation>Número del contrato</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:string">

<xs:minLength value="0"/>

<xs:maxLength value="20"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="val" use="required">

<xs:annotation>

<xs:documentation>Valor total del Contrato</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:double">

<xs:pattern value="[0-9]{1,20}"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

<xs:attribute name="fini" type="xs:date" use="required">

<xs:annotation>

<xs:documentation>Fecha inicial del Contrato</xs:documentation>

</xs:annotation>

</xs:attribute>

<xs:attribute name="ffin" type="xs:date" use="required">

<xs:annotation>

<xs:documentation>Fecha final del Contrato</xs:documentation>

</xs:annotation>

</xs:attribute>

<xs:attribute name="ccon" use="required">

<xs:annotation>

<xs:documentation>Clase de contrato</xs:documentation>

</xs:annotation>

<xs:simpleType>

<xs:restriction base="xs:int">

<xs:minInclusive value="0"/>

<xs:maxInclusive value="9999"/>

</xs:restriction>

</xs:simpleType>

</xs:attribute>

</xs:complexType>

<xs:unique name="PagoUnico">

<xs:selector xpath="pagos"/>

<xs:field xpath="@cpt"/>

<xs:field xpath="@tdoc"/>

<xs:field xpath="@nid"/>

</xs:unique>

</xs:element>

</xs:schema>